<?php
/*
 * Controle para o cadastro de usuarios. Se já houver um usuario logado, mostra a home do usuario com uma mensagem de erro.
 * Se nao estiver logado, verifica se existe POST, caso exista, tenta cadastrar o usuario, caso contrario, mostra a pagina de cadastro.  
 */
	if($this->getUsuario() == null){
		if($_POST){
			$this->getRegistro()->set('mostraTermoResponsabilidade', false);
			
			/*
			 * Pegando todos os Dados do formulário pelo Post.
			 */
			
			/*
			 * DADOS PESSOAIS
			 */
			$strNome				=	isset($_POST['inputNome']) ? $_POST['inputNome'] : '';
			$intDataNascimento		=	isset($_POST['inputDataNascimentoDia']) && isset($_POST['inputDataNascimentoMes']) && isset($_POST['inputDataNascimentoAno']) ? $_POST['inputDataNascimentoAno'] . '-' . $_POST['inputDataNascimentoMes'] . '-' . $_POST['inputDataNascimentoDia'] : '';
			$strSexo 				=	isset($_POST['inputSexo']) ? $_POST['inputSexo'] : '';
			$strCidade				=	isset($_POST['inputCidade']) ? $_POST['inputCidade'] : '';
			$strEstado				=	isset($_POST['selectEstado']) ? $_POST['selectEstado'] : '';
			
			/*
			 * Pega a foto do usuario se estiver setada
			 */
			if($_FILES['inputFoto']['name'] != ''){
				$arquivoFoto	=	$_FILES['inputFoto'];
				$strFoto		=	$arquivoFoto['name'];
			}
			else{
				$arquivoFoto	=	null;
				$strFoto		=	'';
			}
			
			/*
			 * FINALIDADE DE USO
			 */
			
			$tipoCadastro			=	isset($_POST['inputTipoCadastro']) ? $_POST['inputTipoCadastro'] : null;
			
			/*
			 * DADOS DE ALUNO E PROFESSOR
			 */
			
			$strInstituicao		=	isset($_POST['inputInstituicao']) ? $_POST['inputInstituicao'] : '';
			
			$strNivel			=	isset($_POST['selectNivel']) ? $_POST['selectNivel'] : '--';
			$strCurso			=	isset($_POST['inputCurso']) ? $_POST['inputCurso'] : '';
			$intPeriodo			=	isset($_POST['selectPeriodo']) ? $_POST['selectPeriodo'] : '--';
			
			$strInstituto 					=	isset($_POST['inputInstituto']) ? $_POST['inputInstituto'] : '';
			$strDepartamento				=	isset($_POST['inputDepartamento']) ? $_POST['inputDepartamento'] : '';
			$strTitulacao 					=	isset($_POST['selectTitulacao']) ? $_POST['selectTitulacao'] : '--';
			$strEnderecoInstitucional 		=	isset($_POST['inputEnderecoInstitucional']) ? $_POST['inputEnderecoInstitucional'] : '';
			$intTelefoneInstitucionalDDD	=	isset($_POST['inputTelefoneInstitucionalDDD']) ? $_POST['inputTelefoneInstitucionalDDD'] : '';
			$intTelefoneInstitucionalPrefixo=	isset($_POST['inputTelefoneInstitucionalPrefixo']) ? $_POST['inputTelefoneInstitucionalPrefixo'] : '';
			$intTelefoneInstitucionalSufixo	=	isset($_POST['inputTelefoneInstitucionalSufixo']) ? $_POST['inputTelefoneInstitucionalSufixo'] : '';
			$strDisciplinasPretendidas 		=	isset($_POST['textareaDisciplinasPretendidas']) ? $_POST['textareaDisciplinasPretendidas'] : '';
			
			/*
			 * DADOS DE CADASTRO
			 */
			$strEmail				=	isset($_POST['inputEmail']) ? $_POST['inputEmail'] : '';
			$strConfirmaEmail		=	isset($_POST['inputConfirmaEmail']) ? $_POST['inputConfirmaEmail'] : '';
			$strSenha				=	isset($_POST['inputSenha']) ? $_POST['inputSenha'] : '';
			$strConfirmaSenha		=	isset($_POST['inputConfirmaSenha']) ? $_POST['inputConfirmaSenha'] : '';
			
			/*
			 * TERMO DE COMPROMISSO
			 */
			$termoCompromisso		=	isset($_POST['checkAceitoTermo']) ? true : false;
			
			/*
			 * Se sao validos tenta salva-los no banco de dados e redireciona para a principal.
			 * Caso nao sejam validos ou as informacoes de cadastro de professor nao tenham sido preenchidas, volta a pagina de cadastro.
			 */
			if(Usuario::salvarNovoUsuario($strEmail, $strConfirmaEmail, $strSenha, $strConfirmaSenha, $tipoCadastro, $strNome, $arquivoFoto, $intDataNascimento, $strSexo, $strCidade, $strEstado, $strInstituicao, $strNivel, $strCurso, $intPeriodo, $strInstituto, $strDepartamento, $strTitulacao, $strEnderecoInstitucional, $intTelefoneInstitucionalDDD . $intTelefoneInstitucionalPrefixo . $intTelefoneInstitucionalSufixo, $strDisciplinasPretendidas, $termoCompromisso)){
				redireciona(array('principal'));
				exit;
			}
			else {
				/*
				 * Armazena as variaveis no registro para caso de Erro e para o caso de cadastro de professor
				 */
				
				$dataNascimento 		=	explode('-', $intDataNascimento);
				$intDataNascimentoDia 	=	isset($dataNascimento[2]) ? $dataNascimento[2] : '';
				$intDataNascimentoMes 	=	isset($dataNascimento[1]) ? $dataNascimento[1] : '';
				$intDataNascimentoAno 	=	isset($dataNascimento[0]) ? $dataNascimento[0] : '';
				
				/*
				 * Dados Pessoais
				 */
				
				$this->getRegistro()->set('strNome', $strNome);
				$this->getRegistro()->set('intDataNascimentoDia', $intDataNascimentoDia);
				$this->getRegistro()->set('intDataNascimentoMes', $intDataNascimentoMes);
				$this->getRegistro()->set('intDataNascimentoAno', $intDataNascimentoAno);
				$this->getRegistro()->set('strSexo', $strSexo);
				$this->getRegistro()->set('strCidade', $strCidade);
				$this->getRegistro()->set('strEstado', $strEstado);
				
				/*
				 * Tipo de Cadastro
				 */
				
				$this->getRegistro()->set('tipoCadastro', $tipoCadastro);
				
				/*
				 * Dados de Aluno e Professor
				 */
				
				$this->getRegistro()->set('strInstituicao', $strInstituicao);
				$this->getRegistro()->set('strNivel', $strNivel);
				$this->getRegistro()->set('strCurso', $strCurso);
				$this->getRegistro()->set('intPeriodo', $intPeriodo);
				
				$this->getRegistro()->set('strInstituto', $strInstituto);
				$this->getRegistro()->set('strDepartamento', $strDepartamento);
				$this->getRegistro()->set('strTitulacao', $strTitulacao);
				$this->getRegistro()->set('strEnderecoInstitucional', $strEnderecoInstitucional);
				$this->getRegistro()->set('intTelefoneInstitucionalDDD', $intTelefoneInstitucionalDDD);
				$this->getRegistro()->set('intTelefoneInstitucionalPrefixo', $intTelefoneInstitucionalPrefixo);
				$this->getRegistro()->set('intTelefoneInstitucionalSufixo', $intTelefoneInstitucionalSufixo);
				$this->getRegistro()->set('strDisciplinasPretendidas', $strDisciplinasPretendidas);
				
				/*
				 * Dados de cadastro
				 */
				
				$this->getRegistro()->set('strEmail', $strEmail);
				$this->getRegistro()->set('strConfirmaEmail', $strConfirmaEmail);
				
				/*
				 * Termo de Responsabilidade
				 */
				if ($tipoCadastro == 'aluno' || $tipoCadastro == 'professor') $this->getRegistro()->set('mostraTermoResponsabilidade', true);
				else $this->getRegistro()->set('mostraTermoResponsabilidade', false);
				
				
				$this->exibir('cadastrar.php');
			}
		}
		else{
			$this->getRegistro()->set('tipoCadastro', null);
			$this->getRegistro()->set('mostraTermoResponsabilidade', false);
			$this->exibir('cadastrar.php');
		}

	}
	else{
		$strMensagem1	=	'Operação Inválida.';
    	$strMensagem2	=	'Você está logado na Constructore.';
		$_SESSION['constructore']['mensagens']['msgInvalida']		=	$strMensagem1;
		$_SESSION['constructore']['mensagens']['msgInicial']		=	$strMensagem2;
		redireciona(array('inicial'));
	}
    
?>
